package com.sjqi.demo.constant;

/**
 * 发票的处理状态
 */
public enum InvoiceStatus implements BaseEnum{
    /**
     * 退票已邮寄，二期：页面需要展示状态,待红冲
     */
    FAILED(-1, "审核失败"),
    NEW(0, "新创建"),
    SEND(1, "已邮寄"),
    RECEIVE(2, "已收到"),
    COMPLETE(3, "已完成"),
    TO_INVALID(6, "待作废"),
    /**
     * 退票已邮寄，二期：页面需要展示状态,待红冲
     */
    SEND_INVALID(8, "退票已寄出", "待红冲"),
    //二期：页面需要展示：已红冲
    HAVE_INVALID(9, "已作废", "已红冲"),

    /**
     * 二期新状态
     **/
    SUCCESS_TWO_PHASE(10, "成功"),
    FAIL_TWO_PHASE(11, "异常"),
    RETURN_TWO_PHASE(12, "驳回"),
    IN_HC(13, "红冲中"),
    FAIL_HC(14, "红冲失败");

    private Integer code;
    private String message;
    private String message2 = "";

    InvoiceStatus(Integer code, String message) {
        this.code = code;
        this.message = message;
    }

    InvoiceStatus(Integer code, String message, String message2) {
        this.code = code;
        this.message = message;
        this.message2 = message2;
    }

    @Override
    public Integer getCode() {
        return code;
    }

    @Override
    public String getMessage() {
        return message;
    }

}
